# 第一阶段：构建 Go 项目
FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/golang:1.24-alpine AS build

# 设置工作目录
WORKDIR /app

# 复制项目文件到容器
COPY . .

# 配置 Go 代理，加速依赖下载
ENV GOPROXY=https://goproxy.cn,direct

# 下载依赖并构建项目
RUN go mod tidy \
    && go build -o app ./main.go

# 第二阶段：运行 Go 应用
FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/alpine:latest

# 创建工作目录
WORKDIR /app

# 从第一阶段复制构建好的可执行文件
COPY --from=build /app/app .

# 暴露 8080 端口（根据项目实际情况调整）
EXPOSE 8080

# 启动应用
CMD ["./app"]